﻿using System.Xml;
using System.Xml.Serialization;

namespace Bpmn.Xml;

/// <remarks/>
[XmlInclude(typeof(DataOutputAssociation))]
[XmlInclude(typeof(DataInputAssociation))]
[Serializable]
[XmlType(Namespace = "http://www.omg.org/spec/BPMN/20100524/MODEL", TypeName = "tDataAssociation")]
[XmlRoot("dataAssociation", Namespace = "http://www.omg.org/spec/BPMN/20100524/MODEL", IsNullable = false)]
public partial class DataAssociation : BaseElement
{
    /// <remarks/>
    [XmlElement("sourceRef", DataType = "IDREF")]
    public string[] SourceRef { get; set; } = default!;

    /// <remarks/>
    [XmlElement(DataType = "IDREF")]
    public string TargetRef { get; set; } = default!;

    /// <remarks/>
    [XmlElement("transformation")]
    public FormalExpression Transformation { get; set; } = default!;

    /// <remarks/>
    [XmlElement("assignment")]
    public Assignment[] Assignment { get; set; } = default!;
}
